﻿using System;
using System.Diagnostics;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.UI;

namespace JQuery.Utilities
{
    public enum TraceSeverity
    {
        Critical = 0,
        Error,
        Information,
        Warning
    }

	public class Utility
	{
        public static void TraceEvent(string source, string message)
        {
            TraceEvent(source, message, TraceSeverity.Information);
        }

        public static void TraceEvent(string source, Exception exception, TraceSeverity severity)
        {
            if (Debug.Listeners.Count > 0)
            {
                Debug.Write(new EventInformation
                {
                    Source = source,
                    Exception = exception,
                    Severity = severity
                });
            }
        }

        public static void TraceEvent(string source, string message, TraceSeverity severity)
        {
            if (Debug.Listeners.Count > 0)
            {
                Debug.Write(new EventInformation
                {
                    Source = source,
                    Message = message,
                    Severity = severity
                });
            }
        }

//        internal static void RegisterJQueryUICore(ResourceManager Manager, JQNRegistration options)
//        {
//            if (options.RegisterJQNUICore == false) return;  /// if the core module is not to be used abort the load of the jquery.ui API
//                                                                /// 
//            Type type = typeof(Resources);
//            String resource = String.Empty;
//#if DEBUG
//            resource = Resources.JQN.ui_core_debug;

//            if (Manager.IsResourceRegistered(resource) == false)
//            {
//                Manager.Add(JQNModule.Resources[resource]);
//            }

//            resource = Resources.JQN.ui_widget_debug;

//            if (options.RegisterJQNUIWidget == true && Manager.IsResourceRegistered(resource) == false)
//            {
//                Manager.Add(JQNModule.Resources[resource]);
//            }

//            resource = Resources.JQN.ui_mouse_debug;

//            if (options.RegisterJQNUIMouse == true && Manager.IsResourceRegistered(Resources.JQN.ui_widget_debug) && Manager.IsResourceRegistered(resource) == false)
//            {
//                Manager.Add(JQNModule.Resources[resource]);
//            }

//            resource = Resources.JQN.ui_position_debug;

//            if (options.RegisterJQNUIPosition == true && Manager.IsResourceRegistered(resource) == false)
//            {
//                Manager.Add(JQNModule.Resources[resource]);
//            }
//#else
//            resource = Resources.jquery_ui_core;

//             if (Manager.IsResourceRegistered(resource) == false)
//            {
//                Manager.Add(JQueryModule.Resources[resource]);
//            }

//            resource = Resources.JQuery.ui_widget;

//            if (options.RegisterJQueryUIWidget == true && Manager.IsResourceRegistered(resource) == false)
//            {
//                Manager.Add(JQueryModule.Resources[resource]);
//            }

//            resource = Resources.JQuery.ui_mouse;

//            if (options.RegisterJQueryUIMouse == true && Manager.IsResourceRegistered(Resources.JQuery.ui_widget) && Manager.IsResourceRegistered(resource) == false)
//            {
//                Manager.Add(JQueryModule.Resources[resource]);
//            }

//            resource = Resources.JQuery.ui_position;

//            if (options.RegisterJQueryUIPosition == true && Manager.IsResourceRegistered(resource) == false)
//            {
//                Manager.Add(JQueryModule.Resources[resource]);
//            }
//#endif
//        }
	}
}

